The present invention relates to a method and a system for transferring information on the Internet.
Over the last few years, Internet has developed into the fastest growing means of communication and is predicted to be the main system for distributing information in the future. The Internet has become increasingly popular and the number of users is growing at a magnificent rate.
However, the popularity of the Internet, and especially the use of the Internet application World Wide Web, is putting the net under enormous capacity pressure. Traffic on the Internet doubles about every three months, with no signs of slowing down. This kind of exponential growth will eventually slow down, but several factors indicate that it is still far from any slowdown in growth.
Today, only a small fraction, about 3 to 5 percent, of all PCs have access to the Internet. It is believed that most of those who have made and will make the investment in a PC sill eventually want access to the Internet. Furthermore, communication speeds between the user and the Internet infrastructure is increasing rapidly. The transition from 14.4 kbit/s modems to 28.8 kbit/s is just being completed as manufactures announce new modems at 56 kbit/s. Other technologies such as ISDN (128 kbit/s), Cable TV modems (500-10,000 kbit/s) and xDSL, (2,000 to 25,000 kbit/s) are emerging. Moreover, manufacturers of household electronics are launching low costs devices to give Internet world Wide Web access through television sets, telephones, etc.
These and other factors are all contributing in making it increasingly difficult to access information on the Internet, since the system is basically being over-loaded. This problem is a fact both in USA and Europe, but it is even more serious when passing information between USA and Europe. The transatlantic transmission capacity is too small to cope with the exploding Internet use.
Basically, there exists two conventional solutions to this problem. A first solution is to add more band-width and switching capacity, which is being done, but which carries huge costs and also faces significant technical problems. A second solution is to use so called xe2x80x9ccachingxe2x80x9d or xe2x80x9cmirroringxe2x80x9d techniques. The meaning of these definitions is somewhat undefined and is also in some cases somewhat overlapping. However, xe2x80x9ccachingxe2x80x9d basically means to keep track of the Internet traffic and to keep copies of the most frequently accessed World Wide Web files at a location closer to the user. Similarly, xe2x80x9cmirroringxe2x80x9d basically means to keep copies of specific World Wide Web files in a mirror server, independent of the access frequencies.
These second solutions hence involve the providing of a local copy of a World Wide Web Site of interest. For example, a copy of CNN""s USA-based homepage may be provided in a cache or a mirror at a European xe2x80x9cproxyxe2x80x9d location, whereby European Internet users may access the CNN homepage without having to use the transatlantic communication link, thereby both attaining quicker access and at the same time lowering the load on the transatlantic link.
However, caching and mirroring also raises several technical problems. For example, current research show that to be most efficient, the cache must be near the original information source. Caching is always more efficient closer to the information content provider server then closer to the user. The problem is that, depending on the popularity of each site, the actual location of the most popular original information providers keep moving around. A cache would therefore need to be very big to be efficient.
Another problem is that the user must specify a location for the copies of the original content information, it being a cache or a mirror. Such a location is called a xe2x80x9cproxyxe2x80x9d and can be specified in all commonly used softwares for web access. This user interaction is difficult to obtain, given the increasing diversity of web users.
Furthermore, if the proxy is very large, as is needed to provide for a large amount of content with ever changing popularity, it will also, for economical reasons, need to cater for very many users. The proxy itself will then become a bottleneck, and access times may thus increase. Consequently, there exists a problem with the limited scaleability of the proxy technique.
It is therefore an object of the invention to reduce the capacity constraints on the Internet.
Another object of the invention is to provide a scaleable technology for reducing access time on the Internet which allows growth to a significantly larger amount of users and information traffic on the Internet.
According to the present invention, said objectives are achieved by a method and a system according to the appended claims.
Hence, according the invention, there is provided a concept for transferring information on the Internet, comprising: intercepting an information request from an Internet user directed to an Internet information content provider address; determining whether or not said request relates to an information content provider address providing information which is also provided at a corresponding alternative address; and directing said request either to said alternative address, if existing, or to said information content provider address, if not, for providing the requested information to said user.
The invention is hence based on the use of a so called interceptor, or interceptor means, which is used to examine the information requests from a user to decide whether the same information exists in a copied form or the like on a server means arranged locally with respect to said interceptor means.
Hence, information corresponding to at least part of the information provided at one or more Internet information content provider addresses, is provided at respective associated alternative addresses, preferably in a local storing means such as a local cache or mirror, the arrangement of said alternative addresses providing easier access with respect to a Internet user;
Here, the term xe2x80x9clocallyxe2x80x9d does not necessarily imply locally in the geographical sense, but may just as well mean locally in a time or access sense. The essential feature being that the access to the xe2x80x9clocalxe2x80x9d server is quicker, easier, more cost efficient, or in any other aspect more preferable then the access to the original content provider.
Consequently, in a preferred embodiment of the invention, said storing means is arranged in direct communication with said intercepting means.
According to the invention, the user does not have to decide whether it is preferable to use the alternative server or not. Instead this selection is performed by the interceptor, thereby essentially only making use of the local server when the requested information is actually proveded thereon.
In order for the re-routing of the information requests to be effective, it is preferred that the interception means is arranged close to the user, preferably between said user and an Internet first switching point. Such an Internet first switching point is generally provided by a so called Internet Service Provider, which for example may be the local phone company, such as Telia in Sweden. However, in different applications, it will also or alternatively be preferred to arrange said intercepting means at a Border Router or at a so called Network Access Point.
According to yet another preferred embodiment of the invention, the interceptor comprises a look up table which includes a first list of information content provider addresses having associated corresponding alternative addresses, making it possible easily to determine whether or not the request relates to information possibly stored at an alternative address on said storing means. The first list may for example include a list of locally stored World Wide Web Sites, i.e. a list of IP-addresses.
The interceptor is hence arranged to receive the information request from the user and then to decide, by comparison with said list, whether the address of interest have a copy or the like thereof provided on the locally arranged server. If the answer is yes, the request is re-routed to an alternative address on the local server. If no, then the request is sent on xe2x80x9cuntouchedxe2x80x9d to the first switching point or directly to the Internet and so forth.
According to a preferred embodiment of the invention, only requests or frames referring to a specific communication format or application, corresponding to the type of information service provided on the local storing means, is intercepted. For example, only so called TCP-queries to the WWW port.
According to the invention, the user does not have to decide whether or not to use an alternative adress. Instead, the interceptor keeps track of which addresses or information that are stored in a copied form at the local server and simply re-routs the request if there is a match between the requested information address and a locally arranged copy of at least part of the information held at the requested address.
This allows for the preferred scaleability of a system according to the invention, since the local server may be very large without slowing down the use of the server. The information request does not have to pass through the local server, but merely be judged with respect to the list of addresses stored in the interceptor. A interceptor according to the invention may therefor be used in communication with several servers, which in turn may be arranged in an hierarchical memory structure.
Furthermore, the said interceptor means may be constituted by several interceptors arranged in parallel and connected, preferably via high speed switching means, to the server or servers.
In order for the request to be easily directed to the correct location on the server or servers, in such a case when at least one alternative address exists, said look up table preferably further comprises a second list of corresponding alternative addresses being associated with said information content provider addresses, for obtaining an alternative address corresponding to the request. When the interceptor decides that a copy of at least part of the information provided at the requested information address exists on one of the local servers, the second list provides the exact location of said alternative address or information on the server, thereby allowing the request to be re-routed directly to the alternative address, without having to travel through the entire server in order to reach the address of interest. This feature further increases the scaleability of a system according to the invention.
In some cases, it may be desired to provide copies of only part of the information content provided by an information content provider. I such a case, it is preferred to pass the information request along to the original content provider if the request corresponds to the part of the entire information content which in fact does not exists on the local server.
Hence, according to a preferred embodiment of the invention, there is provided a list storing information indicating if all of the information at the respective information content provider addresses is provided at the associated corresponding alternative addresses or, if not, which part of said information is provided, or is not provided, at said at least one associated corresponding alternative addresses. Consequently, the interceptor according to this embodiment is arranged to direct said information request to an applicable alternative address on the local server only if said alternative address provides the part of the information which refers to said information request.
According to a further developed embodiment, this third list, or parts thereof, may be provided in connection with the local server. According to this embodiment, a request relating to a specific content address, having an alternative address on sad server, may be re-routed to the server even if the part of information of interest in fact does not exist in a copied form on the server. However, when received at the server, the request is checked against said third list and then, since the relevant information in his case actually did not exist, is sent on to the original content provider. Consequently, some requests may be temporarily re-routed but still sent on to the original content provider. In a preferred embodiment, the part of said third list relating to frequently visited sites is stored in connection with said interceptor means, and the part relating to less frequently visited sites is stored connection with said storing means. This provides the advantage of faster processing achivable by said interceptor and determining means.
The third list may for example include so called URL-addressen or addresspatterns of files or object that are or are not mirrored at the alternative address.
According to yet another embodiment of the invention, there is provided means for updating the information at said alternative addresses. Preferably, said updating means is arranged to update the information at said alternative addresses at specific time intervals. Alternatively, said updating means may be arranged to provide an updating signal from said information content provider address to said corresponding alternative address for updating the information at the alternative address when requested.
According to a yet further embodiment of the invention, said local server may comprise processing means for controlling for example said updating of the information at the alternative addresses. The server control unit or a interceptor control unit may be used to update said lists as the information content in the local storing means changes.
The invention provides many advantages compared to prior art. For example, traffic can be redirected to the mirror server even if the user do not specify a proxy location or if the user deliberately tries to inactivate a proxy setting made by the Internet Service Provider.
The content on the local or mirror server can be managed through a process known as xe2x80x9cserver pushxe2x80x9d, whereby changes in the original content servers is xe2x80x9cpushedxe2x80x9d to the mirror server.
Further, there is no limit to the number of interceptors that may be used. Moreover, each interceptor may point to any number of different servers for different parts of the mirrored content. Also, several mirror servers may be configures both in parallel at a given location, and in a geographic hierarchy.
In the event of a failure of an interceptor, it can rapidly be bypassed to restore some service while the interceptor is being repaired or replaced.
In the event of a failure of a mirror server, or a disk subsystem or on a mirror server, the interceptor can be instructed to route the affected part of the traffic to the Internet, while the defective components are being repaired or replaced.
It is to be understood that the local storing means may function as a mirror as well as a cache, as long as an updated list of which sites that presently are stored on said storing means exists to be used by the interceptor for deciding whether or not to re-route the request.
Although the description of the invention has been made with respect to the Internet communication system, it is understood by those skilled in the art that the invention also may be used in other similar types of global information communication systems which may be found in the future and which may show similar kinds of communication problems. The invention is therefore of course not limited to the Internet application.
Also, even though the description further has been made mainly with respect to the World Wide Web application, it is to be understood that the invention may as well be used for many other kinds of net applications and is not limited thereto.
Furthermore, even though the invention has been described as comprising intercepting, determining, directing and other means, it is understood by those stilled in the art that these different elements do not necessarily need to be provided as single units, but may instead constitute part of each other or may be integrated in some form.